23

» WarCraft 3 / Урон от атрибутов

Похожие вопросы:

ответ
Вот небольшая наработока (не уверен в работоспособности, надо еще проверить), использующая хак с чтением памяти:
function GetUnitDamage takes unit u returns integer
	local integer p = Memory[ConvertHandle(u) / 4 + 0x7A] / 4
	local integer sides1 = Memory[p + 0x25]
	local integer dice1 = Memory[p + 0x22]
	local integer base = Memory[p + 0x28]
	local integer bonus = Memory[p + 0x2C]
	//call BJDebugMsg("DMG: " + I2S(base + dice1) + " - " + I2S(base + sides1 * dice1) + " + " + I2S(bonus))
	return base + dice1
endfunction
ответ
Ну либо для мультикастера заводим одельного дамми с маной, с атрибутами, но при каждом касте скидываем ему кд и ману ставим на макс (если разумеется каст не зависит от кол-ва текущей маны, иначе на кол-во реального героя).

Ну так же можно сделать дамми аналоги способностей для мульткаста, или юзать мемхак с принудительным кастом абилки (но это подходит лишь для дефолтных абилок).

23

» WarCraft 3 / Своя анимация

Похожие вопросы:

ответ
А вообще, ответом на подобные вопросы в 2017 году уже должны стать подобные ссылки: www.youtube.com/watch?v=pJNPBW4QGhg&t=1s
ответ
Галочка "однократно" стоит?
там в мдл визе под названием анимациии
скачал, галочки нет. Поставь, тогда анимация будет останавливаться на последнем кадре.
ответ
  1. с помощью кода включить нужную анимацию у юнита, разумеется анимация должна быть у модели, у старых варовских моделей анимация разговора была лишь на портрете, это отдельная модель, кроме всяких крипов с мордами в 3 полигона.
  2. Достать то можно - что толку, они имеют иной формат, с ними ниче сделать низя, публичного софта для редактирования и изучения нет, поэтому рефорджевские модели никому и ненужны - ты с ними ниче и не сделаешь.
ответ
Для аттачей необходимо использовать способность Tree of Life upgrade ability (Atol), видна только в JNGP, но при помощи некоторых манипуляций можно и в Reforged увидеть.
Альтернатив не так много, о них уже сказал Extremator.
Для этого берутся либо ауры (тогда в них ещё можно и специфический бафф накладывать на носителя), либо абилки от "когтей атаки" и "кольца защиты" (дающие +атаки и +защиту, в них точно так же как в ауре настраиваются точки крепления и модели)
Использовать способность Shpere (Asph) или аналоги у духов возмездия не рекомендуются.

23

» WarCraft 3 / Фризы

Похожие вопросы:

ответ
Занят похожим проектом, тебе понадобятся два триггера
Первый - с периодичностью в 30 сек. записывает все юниты такого-то игрока в группу юнитов <Имя переменной, тип - группа юнитов> с двумя условиями - Юнит живой и Юнит не состоит в это группе
Второй - событие, юнит умирает. Условие - юнит состоит в группе юнитов <Имя переменной, тип - группа юнитов>. Действие - удалить юнита из группы юнитов <Имя переменной, тип - группа юнитов>
Хотя по идее можно ужать все это в один триггер, убрав условие из первого триггера Юнит - живой, и после записи в группу выбрасывать из нее всех мертвяков.
Хотя все равно наблюдаются затупы, при довольно большом количестве юнитов на карте.
ответ
В карте много декораций (не скачивал)?
Есть подозрение, что Вулкан, как и Волна силы, заставляют игры пересчитывать высоту всех декораций на карте.
ответ
PAMEXI:
makkad:
А может ли быть дело не в триггерах, а к примеру в моделях? Кто нибудь когда нибудь сталкивался с фризами из-за используемых моделей?
Это звучит глупа... Фризы из-за модели...
Тем не менее, попробовал удалить весь импорт из карты (около 6 МБ, 157 файлов mdx). Лаги и фризы прекратились. Сейчас дихотомией пробую найти проблемную модель. Хотя может проблемная модель и не одна, или например может быть накапливаемый эффект, который так не найти.

Сильно уменьшил число лагов, избавившись от двух моделей. Эти модели ещё и сами по себе вели себя странно. В частности, фундамент из модели Домика произвольно прикреплялся к анимациям других моделей. А модель Академии иногда меняла свой видимый масштаб без причины.
Вставил эти модели в пример xgm.guru/files/100/244875/comments/448654/Models.w3m, где видны эти артефакты
Модели скачивал от сюда:
ответ
pro100master:
зачем тогда плодишь сктолько обьектов в ро пиши все код ро
Ты можешь не писать свои полезные ответы под моими вопросами?
ответ
виновата скорость снаряда > 0

то есть <=

23

» WarCraft 3 / MdlVis

Похожие вопросы:

ответ
Редактор анимаций - скелет - прикрепить выделенные вершины к кости Head.
А лучше статьи почитай по мдлвизу.
А ещё лучше - сам попытайся разобраться.
ответ
всё тему можно закрывать, пару раз сделал то же самое и о чудо всё заработало, в общем спишем на кривизну конвертера :D
P. S. если усидчивости хватит то ожидайте это чудо в разделе модели)
ответ
Надо дополнительно иметь 126 варик, чтобы мдлвис брал от него нужные ему файлы, это самый простой способ из мне известных

23

» WarCraft 3 / Версия игры (карты)

Похожие вопросы:

ответ
Была проблема с загрузкой на сайт, уже починили, можешь смело заливать.
Какой предел размера карты для публикации на этом сайте?
100 мегабайт у всего ресурса, но если надо больше и есть что показать, то можно попросить модераторов залить на сайт и + ссылки на облака никто не запрещал.
Вот есть ограничение на игру по сети (8м)
Это где такое? ограничение было только на гарене, и ото оно обходилось через спец патч, сейчас всё хостуется через ирину или последний патч рефорджа
Там нет этих ограничений
Хотелось бы узнать что сколько кушает. Т.е. какую часть памяти примерно занимают триггеры (300+ штук), какую ландшафт (почти 8 тысяч декораций), юниты на карте, юниты в редакторе, спелы, переменные? На что мне сделать упор в плане оптимизации размера карты? Из моментов, к которым сам пришел это
1 -удаление юнитов с карты и добавление их уже в игре через триггеры,
2 -редактирование стандартных спелов взамен созданию новых на их основе
Можно открыть карту любой mpq программой, разумеется и посмотреть какой файл что кушает, в твоей случае после импорта на 2 месте будут гуи триггеры. Но можно вообще не заморачиваться по поводу размеров в 2020, а на сайте просто был глюк
ответ
Нашёл причину вылета.
У героя был Спеллбук, в спеллбуке была пассивная способность аура "Боевой марш". В процессе игры герой умирал и воскрешался. Если после воскрешения сохраниться и загрузиться вновь, то вылетает с ошибкой.
Исправил следующим образом. Отследил сохранения и в этом триггере отключал все пассивки в Спелбуке (SetPlayerAbilityAvaible() на false). Через малое время после сохранения вновь их активирую.
ответ
Можно даже карты сделанные на мемхаке открыть (без сохранения).
Единственное скажем требование для НЕ открытия это функционал jngp

23

» WarCraft 3 / Анимация

Похожие вопросы:

ответ
Видимость же не отключена?
ответ
Дмитрий Ларионов, та у меня ж нет ретеры я про неё вообще ничего не знаю, с mdlvis'oм я бы смог помочь)

Нашел гайдик, может он тебе поможет?

Я бы на твоём месте даже без гайдов попробовал бы везде пощёлкать и поискать надпись "Stand", а если бы нашел, то попробовал бы как-нибудь переименовать

23

» WarCraft 3 / Найти умирающего юнита

Похожие вопросы:

ответ
N7 Molot:
Для простоты, создай один общий отряд для всех и добавляй туда каждого, кто появится на карте, так же ранее после загрузки выдели их и добавь. Хз, умеешь ли делать это всё без утечек, инфу можно на сайте найти. И после смерти юнта удаляем его из отряда.
Для отлова заклинания есть логическое/булевое сравнения, если данный баф/заклинание на юните.

23

» WarCraft 3 / Почему оно не работает?

Похожие вопросы:

ответ
ну тогда через запрет технологии +бд
то есть твой вариант только с бд
ответ
Я нашел ответ просто карта у меня не правильно работала.
ответ
Опен мап должно открыть вот такое меню
Возможно у тебя реально проблема в последней, например он сканирует список всех карт, находит какое-то непотребство и падает в ошибку, надо проследить и почистить этот путь

Я не понимаю как работать без него, особенно без ро
В идее выбираешь режим редактор, а не игры, и работаешь в редакторе как обычно
ответ
Скорее всего условия не выполняются. Нужно выводить на экран сообщения и смотреть, какие вывелись.
ответ
Потому что предмет сначала удаляется. Его больше нет в слоте.
А потом спрашивается, сколько зарядов у предмета в слоте. Но там вообще нет предмета.

23

» WarCraft 3 / Любопытный триггер

Похожие вопросы:

ответ
боже
ловить атакованных юнитов это нафиг не нужная жесть
лови юнитов которые входят на карту и добавляй им событие
юнит может войти на карту только однажды(если не извращаться специально) так что лишних срабатываний не будет
и на 1 триггер меньше так как группа не нужна и отлов смерти тоже
в общем смотри статьи и наработки

23

» WarCraft 3 / Как работать с картой в виде папки?

Похожие вопросы:

ответ
Поставь шрифты, они у тебя улетели с версии 1.28.5 (?)
Распаковываешь в корень вара на диске д (или где он там у тебя лежит), если не заработает то смотришь реестр, где прописан варик.
Рановато нажал отправить
ответ
Он кладет это дело в память после preloader`а Можно код изменять напрямую в озу.

23

» WarCraft 3 / Апгрейд предметов

Похожие вопросы:

ответ
тогда можно заменить исследование на создание юнита
здание создает определенного юнита -> повышаем уровень инвентаря
у этого способа есть несколько минусов:
  • одна иконка на всех уровнях улучшения
  • юнит не исчезнет на последнем уровне улучшения, а значит придется заменять здание на другое, но уже без этого юнита

23

» WarCraft 3 / 1 оружие = 2 предмета

Похожие вопросы:

ответ
molot39, очень очень очень криво и костыльно
gabriel_fisher, заводишь логическую переменную (назовём её isItem)
устанавливаем переменную isItem в false(ложь/нет)
циклом перебираешь слоты с 1 по 6
если предмет в слоте "переменная цикла" имеет 2 уровень и не равен подобранному предмету то устанавливаем isItem в true(истина/да)
после цикла идёт условие
если isItem равно true(истина/да) то
выбрасываем подобранный предмет
для того чтобы было муи нужно юзать локалки и джасс
подробнее можно найти там
ответ
База данных. В базе будет записан каждый меч, точнее номер меча, при подборе запоминаем в custom value или в хэш-таблицу, или в переменную или еще как-нибудь. Если номер больше нуля, значит у героя есть меч.
Самое простое - при подборе меча, проверяем есть ли в инвентаре такой меч. В РО итема можно задать уровнями. Например, первый уровень - мечи и топоры, второй уровень - защита груди, ну и так далее. Циклом пробегаешь, и поверяешь предметы на уровень.
Можно логическую переменную использовать для запоминания (одна логическая переменная - мечи и топоры, вторая логическая - луки и арбалеты итд). При подборе одного меча, проверяешь логическую, если есть, то дропаешь нафиг.
В таких системах используют обычно сферу молнию, а можно ли проверять есть ли такая способность у героя? Если уровень способности > 0, значит держит меч
ищи в поиске, такое миллион раз задавали. ношение больше одного, больше одного и так далее.
ответ
Открыл твою карту. Ну да, у тебя там остальные действия пропускаются и триггер этот выключен, лол)
ответ
Если сами не в силах написать, то используйте готовое.
ответ
Пишу сюда - подскажите что делать?
Можно например посмотреть на хайве.

И на сайте есть похожая система.

23

» WarCraft 3 / Сила Тьмы

Похожие вопросы:

ответ
Морф.
ответ
Astra, нет так не должно быть, если это тычка с руки, мб атакующего нетв разрешенных целях?
Кстати камеенные доспехи, шипы неруба, срабатывают только на удар юнита, не срабатывают на триггерный урон или на урон от сплеш атаки, рассекающей атаки, т.е всего урона который исходит не от самого удара юнита руками.
ответ
вкладка в редакьоре ландшафта
Дополнительно - Игровой интерфейс
там меняются все эти тексты, только надо поискать и галочку поставить "использовать нестандартные"
вообще там настраивается куча всего, включая текстуры интерфейса
нужный текст начинается с "Текст - Общий"
ответ
На 126 патче на мемхаке вот можно покупать модификаторы типа атаки, алгоритм для оружия будет тот же самый
На 131 патче функции смены типа атаки есть, но не работают (пока что =))
Морф не костыль, если делаете кампанию и там атаку может менять глав герой, тогда надо будет сделать Х (7) копий героя с новым типом атаки, а если у вас 100 героев и надо всем менять тогда раздувать до 700, это ужасно
Wurst позволит динамически заполнить базу таких героев, но это сложно
ответ
GetEventDamageSource
BlzGetEventDamageType
BlzGetEventWeaponType
BlzGetEventAttackType
Последние три функции вроде только на 1.31 и выше, первая по идее была и раньше.

23

» WarCraft 3 / Импорт интерфейса

Похожие вопросы:

ответ
Берешь, заходишь в Менеджер импорта (F12 вроде), ищешь свою модель, это легко сделать. Тогда ПКМ -> Експортировать и следи, чтобы расширение файла било mdx.
Ты експортировал модель. Также ескпортируй все эти tga, как оказалось сама модель их требует и без них не даже в редакторе не откроется.
Теперь в новой карте в менджере импорта импортируешь модель и все tga. Прописываешь для всех tga и модели те же пути, иначе может не запустится.
Тогда пункт верхнего меню в основном окне редактора Дополнительно -> интерфейс, ищешь "Модель - кнопка приказа(перезарядка)" и меняешь на свою. Всё готово.
Прилагаю карту, в которую перемещал.
ответ
Ятд что не хватило мипмапов.
ответ
Для отображения интерфейса необходима только модель, не нужно для ее роботы новых текстур.
ВарКрафт ссылается на модели для отображения гемплея, а в свою очередь модели ссылаются на текстуры.
Хитрость в том что можна создавать 15 моделей с одинаковыми текстурами.
ответ
я могу попробовать написать программу, которая возьмет из wts перекинет строки в mapSkin

т.е в mapSkin изначально было вот так:
KEY_QUESTS=TRIGSTR_197

А в wts вот так:
STRING 197
{
Информация
}

В итоге в mapSkin станет вот так:
KEY_QUESTS=Информация

Но не раньше чем через 30/60 минут, я занят сейчас
ответ
Посмотри бэкапы из JNGP.
C:\Program Files (x86)\Jass New Gen Pack Rebuild\backups

23

» WarCraft 3 / Анимация, да-да

Похожие вопросы:

ответ
Насколько я помню анимация рубится с SetUnitX только если она установлена через SetUnitAnimation.
Если юзать SetUnitAnimationByIndex, все должно быть нормально.
Статья про SetUnitAnimationByIndex - xgm.ru/p/wc3/play_animation
ответ
закрыт по таймауту
ответ
Если его будут бить сразу 5 юнитов или больше, и при этом он ещё и сам атакует?
Обычно всякие щиты эффектом делают
ответ
Проверь, я удалил тебе это анимку через mdlvis

Удалял через эту программу
По поводу звука не подскажу, надо искать, но я бы попробовал найти ту модель где есть звук стрельбы при атаке и посмотреть как там сделано
ответ
Чтобы узнать кото ударили сплешем, оттолкнуть и уронить нужно:
  1. Отловить урон
  2. Оттолкнуть юнитов
  3. Воспроизвести анимацию по индексу

23

» WarCraft 3 / Постройка альянса

Похожие вопросы:

ответ
Можно воспользоваться FSGUI или DGUI, но это довольно сложные системы.
ответ
А в чём вопрос то?
ответ
Давай разберём моё решение (ответ номер 2), я его не раскрыл полностью потому что ждал наводящих вопросов, но ты его проигнорировал, потому что не понял ни слова?
Ответ номер 3, тебе рассказали тоже самое, но более расширенно и даже карту приложили
Ответ номер 8, про спеллбуки, снова тоже решение отлично, но ты его игнорируешь и спрашиваешь про постройку зданий альянса
Не понятно что такое спеллбук? (это дефолтный скил предмета "книга заклинаний"), мы же тебя не тролим, а отвечаем конкретными решениями, но если у тебя настолько глобальное непонимание, что ты даже не знаешь как задать следующий вопрос, мб тебе не стоит заниматься варкрафт моддингом?
И ТУТ не надо быть программистом, просто тыкаешь кнопочки и задаешь след вопросы:
  • А что такое этот ваш спеллбук спеллбук?
  • а как мне добавить 4?
  • а как сделать чтобы не было слияния заклинаний
  • а как сделать, чтобы по активации заклинания происходило изучение исследования?
  • а продажу юнита?
  • а каст способности?
  • а постройку?
Мы не бежим тебе делать готовую карту/наработку ибо:
  • на это нужно время, даже продвинутым (от получаса до 3х в зависимости от концентрации)
  • карту можно сделать а ты пропадёшь даже лайк не поставив или даже не прочитав
  • получи ты готовое, то ты вообще ничего не поймёшь тогда и станешь паразитом, человеком который отнимает время других людей и эти люди делают ему карту по чуть чуть, есть люди, которые занимаются таким паразитизмом около 10 лет, не буду говорить имена, меня сразу все поняли о ком я

23

» WarCraft 3 / нужно модел из 1.26

Похожие вопросы:

ответ
Я призываю берги!
Ась, что кого? для 126 отслеживание выделения в группе только на мемхаке, чистый 126 лесом, на рефордже через GetChild, вот ссылка, надо скопипастить на русском на Xgm
Но если принебречь этим множественным выбором и представить что выбор единичный
Тогда на гуи всё есть и получиться
C - Юнит выбран
У - Юнит такой-то, способность такая то есть, владелец выбранного=владелец выбирающего
Д -
set s = "" s = string
if p = GetLocalPlayer() then
set s = "Тут\\Типа\\Адрес\\Модели.mdx"
endif
call СоздатьСпецэффект(s,x,y) x,y - координаты, либо вместо них точка, либо виджет

а если по поводу вопроса
Но не понимаю, как именно применить тут эту систему
Система уже расписана, суть в том что у локального игрока создастся эффект с моделью, а у остальных с пустышкой и они ничего не увидят

set s = "" s = string пустышка

if p = GetLocalPlayer() then -- если локальный игрок тогда
set s = "Тут\\Типа\\Адрес\\Модели.mdx" -- модель уже не пустышка

23

» WarCraft 3 / как создать способность 2.0

Похожие вопросы:

ответ
Потому что приказ один и тот же. Разные способности морфа дай. Допустим морф сфинкса и морф друида-ворона.
ответ
создать дамми с временем жизни
приказать заюзать скил
что тут можно не уметь?
ответ
bifurcated, вот сделал наработку что то в роде того что ты хочеш только желательно доработать... но с этим сам почитай статьи
ах забыл рекомендую делать подобные скилы на основе "Канал"
ответ
Вот это чо за рак мозга? Какие еще локалки в фильтре с ифами? Ну с таким не удивительно что не работает.
Да всё работает, вообще-то
quq_CCCP:
Примерно так слабо?
И в чём смысл делать глобалку, а не просто писать тогда уж сразу GetFilterUnit( )
Я сдеал локалку, чтобы вместо GetFilterUnit( ) писать то, что мне нужно, в данном случае CLONE
quq_CCCP:
Потом клонов от способностей ищут не так,
Да так и я их могу найти
Точнее не совсем так, я их искал через Юнит входит в Область ( Игровая зона )
Но искать их в другом триггере и сдругим событием мне нафиг не нужно.
Мне нужно найти иллюзии сразу в триггере со способностью, чтобы потом не было геморроя
========================
И ещё раз повторюсь, что при повторном использовании способности, 2 прошлые иллюзии (да и вообще в принципе если рядом с гером будут другое любое ко-во иллюзий) перемещаются к противнику. Но две новосозданные остаются на месте.
Так же повторюсь, что когда проверка была IsUnitIllusion == false, то иллюзии определяло как не иллюзии!
Все кто пытались помочь, похоже проигнорировали это замечание...
========================
Мой вывод таков: Иллюзиям, призванным через стандартную Способность (Предмет: Иллюзии) присваивается статус иллюзий слегка позже, чем происходит проверка.
С другой стороны, скорее всего это может и можно как-то обойти, ведь есть карты примеры, где подобное работает нужным образом.
О том, как устроены чёртовы способности близов стоит только догадываться =\
К счастью Способность (Предмет: Иллюзии) не наносит 0.00 урона, и за это близам огромное спасибо (что у меня в очередной раз не бомбануло)
А вообще, проще по-моему сделать свою игру, чем нормальную карту в варкрафте -_-
ответ
Вот типы урона "Огня преисподней":
if BlzGetEventAttackType( ) == ConvertAttackType( 0 ) and BlzGetEventDamageType( ) == ConvertDamageType( 8 ) and BlzGetEventWeaponType( ) == ConvertWeaponType( 0 ) then
Bergi_Bear, ну там же всё интуитивно понятно:
BlzGetEventAttackType( ) - возвращает тип атаки.
BlzSetEventAttackType( ) - меняет тип атаки.

23

» WarCraft 3 / Как настроить такой триггер?

Похожие вопросы:

ответ
Нашёл систему, где звук передаётся в таймер, который истекает через 0 секунд. В результате один и тот же звук может проигрываться несколько раз без всяких проблем. В инетике пишут мол это такой баг движка.
ответ
это?
и подставлять это условие потом, там где атаки задаются
ответ
фатал на GetTrigger* че-то там
ааа, это у тебя в Player() попало что-то отличное от 0-15, потому и вылет
ответ
Лучше сделать не чтобы орда добиралась до здания , а чтобы уничтожала его. Иначе будут люди , которые просто будут идти напролом и какой то юнит всё равно пройдет и активирует победу.
ответ
желательно без Jass
Что вам jass плохого сделал? Ну и ладно, вот вам lua:
---@param texFile string
---@return boolean
function BlzChangeMinimapTerrainTex(texFile) end

23

» WarCraft 3 / Почему?

Похожие вопросы:

ответ
потому что фактический размер не совпадает с картой путей. хватит использовать бета редактор, и вопросов не возникнет
ответ
Это баг Warcraft 3 Reforget
Юзай озвучку кентавров, и тогда будет работать.
ответ
Порча это особый тип земли, который распространяется поверх обычной (заменяя её).
И поэтому в игре тайлы порчи часто могут занимать ещё и соседние участки.
Оптимальный вариант уйти от этой механики - заменить стандартный тайл порчей (текстуру подменить)... т.е. вместо "травы" будет текстура "порчи" (так можно сразу 2-3 порчи в одну карту добавить).
ответ
мб отслеживать приказы, какие приказы будут у работника по 100% хп здания?
Или дамиком построить здание, и отказатся строить, у всех игроков - работники альянса (иначе это не пашет) при ремонте здания союзника, если больше никтот не чинит, здание делать за того кто чинит, если бросил чинить (работник отдал любой другой приказ или умер) вернуть в нейтрала, ну и так далее.
ответ
а у тебя точно рефордж? хз может это для луа попробуй просто
call UnitApplyTimedLife( u, 'BTLF', 3 )

23

» WarCraft 3 / РУ ЭДитор

Похожие вопросы:

ответ
Привет, Аскарто. :) Короче, в объект едиторе сторожевая башня - обычная башня альянса с анимациями upgrade, first.
Прописывать в строке Графика - нужная анимация.

23

» WarCraft 3 / Как создать способность

Похожие вопросы:

ответ
Короче, я закрою вопрос. Закажу в акции буйство спелмейкера.
ответ
Вот держи. За подробностями в вк можешь обратится и если такое дело помогу доработаю систему на jass ( мой вк - vk.com/id446544976 )
ответ
XGM Bot:
Похожие вопросы:

ответ
  1. прячем героя, вешаем дамми или эффект на цель
делаем проверку на нейтрала, если да - даем контроль и скилл для выхода
  1. при событии входа в регион делаем проверку на наличие предмета
если есть - делаем нужное действие

все необходимые действия и проверки есть в триггерах
если попытки действительно имели место - в студию

ответ
Macghoul, с помощью триггеров, конечно возможно - в доте же как то сделали?
Но если вы вчера уселись за редактор - вам рано думать о таком, по сути метеорит инвокера - это два юнита, один падающий камень, второй катящийся. Сама кнопка - основана на способности - Канал, т.е просто кнопка для тыканья, которая грубо говоря кроме как тратить ману и указывать цель ни на что ни годна. При нажатии кнопки создается юнит с моделю падающего метеорита (вроде модель лежит в архивах игры, для роликов кампании юзалось как эффект), потом стоит таймер 1.35 сек, который как раз формирует задержку чтобы метеорит визуально упал, после пеовый метеорит удаляется и создается второй, которого двигают и наносят урон всем юнитам вокруг, отдельная система из триггера формирует дебафф горения от метеорита. Там все на jass и средний уровень кодерства, вокер не очень простой герой для копипаста, лучше скопируйте леорика или ликана.
ответ
Всё по старому, даммикаст + способов реализаци куча. Самое главное это отследить событие ядовидой ловушки, тут 3 самых очевидных варианта:
  1. Ловушка умерла, значит активировалась, если же сделано на основе колдовской оглушающей ловушки
  2. Вражеский юнит вошел в зону ловушки
  3. Периодическим триггером перебираем юнитов вокруг ловушки в момент её установки и до тех пор пока они жива, как только найден враг ловушка активирована.
Все 3 варианта в свей степени верны и имеют место быть, тут уже зависит от того в какой врубишься
Ну и действие.
Даммикаст отравленного ножа или любого другого яда на каждого юнита в зоне поражения
О дамми кастах всё находим через поиск

23

» WarCraft 3 / Жар преисподней (отловить урон)

Принятый ответ
Похожие вопросы:

ответ
Вот типы урона "Огня преисподней":
if BlzGetEventAttackType( ) == ConvertAttackType( 0 ) and BlzGetEventDamageType( ) == ConvertDamageType( 8 ) and BlzGetEventWeaponType( ) == ConvertWeaponType( 0 ) then
Bergi_Bear, ну там же всё интуитивно понятно:
BlzGetEventAttackType( ) - возвращает тип атаки.
BlzSetEventAttackType( ) - меняет тип атаки.

23

» WarCraft 3 / Не отображаются модели

Похожие вопросы:

ответ
A) Текстуру модели бросил с правильным путем в папку вара а в карту не импортировал или не изменил путь на правильный
Б) Если дерево стандартное то у него много вариаций а модель теперь другая без вариаций (???)
ответ
Держи. Там были использованы несколько лишних текстур (я так понимаю из вова).
Один вопрос, тупа интересна - что ты делал? "Чего только не делал, однако всё об стенку горох."
ответ
~8gabriel8:
В целом ты прав, что текстура не должна много весить, но это необязательно. К тому же конкретно трудно выбрать лучший вариант, может быть сильное сжатие больше напрягает процессор, а потеря качества будет заметна в игре. Но определённо любая текстура в игре не должна быть размером больше 512х512, большего размера будут лишь терять в качестве при отображении, при этом для моделей оптимальным будет размер 256х256, так как 512х512 используется в основном для интерфейса и загрузочных экранов, то есть при максимально необходимой детализации. Размеры текстуры должны быть степенью двойки: 512\256\128\64\32\16\8\4\2, чтобы игра не вылетала, если настройки графики не максимальные, а такое бывает при установке игры по умолчанию, либо после переустановки винды. При сохранении в BLP Laboratory нужно выбирать blp1, так как blp2 вроде предназначен для WoW и может не отображаться в варике, при этом опыт привёл меня к заключению, что лучше сохранять текстуры с качеством 75%, а не 80%, так как это заметно делает размер меньше, но почти никогда не заметить потери качества. Но это не оптимальный вариант, однажды встречал текстуру отличного качества и меньшего размера, которая занимала больше места и явно теряло качество, когда сохранял её со своими параметрами, не смог понять, как это сделали.
ответ
Потому что варик не воспринимает анимации с вымудренными названиями. Переименовывай их в mdlvize под корректные, используя, например, spell one/two/three/four/five spell channel + эти же 1-5, spell slam, и радуйся жизни.

23

» WarCraft 3 / Вопрос по мемхаку.

Похожие вопросы:

ответ
фатал после игры может быть вызван
а) использованием malloc
б) копированием внутриигровых структур (например, структуру сплеша перенес от одного юнита другому, при чистке один раз адрес зачистился, а на втором проходе произошел краш)
в) неизвестным мне образом
ответ
Сделай сам.
ответ
DracoL1ch:
офсет 2589 *4 , я ж только что сказал
Всё, немного поковырявшись у меня получилось, нужно было еще (id * 4) еще раз умножить на 4. Теперь строки извлекает идеально.
Если кому-то интересно, выглядит это вот так:
	DWORD ReadPointer(DWORD addr)
	{
		return *(DWORD*)(addr);
	}

	DWORD GetJassContext(int id)
	{
		DWORD pJassEnvAddress = DWORD(GetModuleHandle(TEXT("Game.dll"))) + 0xADA848;
		return ReadPointer(ReadPointer(ReadPointer(ReadPointer(pJassEnvAddress) + 0x14) + 0x90) + id * 4);
	}

	DWORD GetStringTable()
	{
		DWORD pJassContext = GetJassContext(1);
		return ReadPointer(ReadPointer(pJassContext + 0x2874) + 0x8);
	}

	std::string from_jString(jString jstrHandle)
	{
		DWORD pStringTable = GetStringTable();
		const char* sptr = (const char*)ReadPointer(ReadPointer(pStringTable + ((jstrHandle * 4)*4) + 0x8) + 0x1C);
		return sptr;
	}
ответ
Ну содержимое у restore само собой разное, в детекте урона новый хук на выход, вам нужна функция загрузки библиотеки?
Это же дело над:

function LoadLibrary takes string nDllName returns integer
    if pLoadLibraryA == 0 then
        set pLoadLibraryA = GetModuleProcAddress("Kernel32.dll", "LoadLibraryA" )
    endif
    if pLoadLibraryA != 0 then
        return CallStdcallWith1Args(pLoadLibraryA,GetStringAddress(nDllName))
    endif
 
    return 0
endfunction
ответ
Вводим в поиск XGM слово "мемхак"
Получаем результаты мемхак
Для самых новичков специально делал
там по максимуму разжевано
А как пользоваться?
Да никак, потому что нет мемхаке смены Описания Предмета, есть только смена описания способности...Но она фаталит при смене способности выше 2 уровня, А для второй не завезли

Но если разобраться можно самому всё сделать

По примеру способности это выглядело бы так
Если функция такая
function SetAbilityUbertip takes integer id, integer lvl, string s returns boolean
    return SetAbilityStringParam2(id,0x158, s, lvl)
endfunction
То чтобы поменять описание надо было сделать
SetAbilityUbertip(ID  способности или предмета, уровень (для предмета не будет уровня), описание)

quq_CCCP, если я не прав, то покажи функцию смены тултипа предмета для любой версии

А ещё судя по тому что смена тултипа не предусматривает юнита или конкретный хендл предмета, значить описание меняется глобально, и нужно использовать либо Гетлокал плеер либо работать с разными копиями предмата/способности
Всё тоже самое применимо к смене описания на Рефордж патче, но там по проще это всё делается